Spring会话过期时间

By youfang

会话过期时间

SpringMvc

  1. web.xml中配置:
    1
    2
    3
    <session-config>
    <session-timeout>30</session-timeout>
    </session-config>
    1. 时间单位为分钟,参数必须为整数
    2. 由于在服务器中设置,则session设置的时间是根据服务器来计算的,而不是客户端。

SpringBoot

  1. 在application.properties文件中配置
    1
    server.servlet.session.timeout=10m

通过java代码动态配置

1
2
3
HttpSession session = request.getSession();
//重新设置会话过期时间
session.setMaxInactiveInterval(60);
  1. 时间单位为秒
  2. 表示当前session在指定时间内若没有与服务器发生任何交互后失效
  3. 期间用户的任何活动都将刷新session的失效时间,例如在10秒内用户刷新页面将重新计算失效时间

优先级

代码设置 > 项目web.xml设置 > 容器web.xml设置(3>2>1)